Blockchain systems have been proposed for a variety of application scenarios, including applications in the financial industry, health care, IoT, and so forth. For example, the Bitcoin system was developed to allow electronic cash to be transferred directly from one party to another without going through a financial institution. Blockchain systems have also been used for the implementation of smart contracts to automate transactions on the blockchain, including triggering clauses upon specified conditions being met.
A key characteristic of prior blockchain implementations is that blockchains have been immutable, e.g., transactions on these prior blockchains cannot be changed. Among other things, such immutability of prior blockchains is an important characteristic in terms of auditability. If transactions on these prior blockchains could be altered, the integrity of the blockchain would be destroyed and the cryptographic techniques for verifying the blockchain transaction would not function as designed.